home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / pluginy Firefox / 398 / 398.xpi / chrome / forecastfox.jar / content / utilities / error-item.js < prev    next >
Text File  |  2010-02-04  |  2KB  |  83 lines

  1. /*------------------------------------------------------------------------------
  2.   Copyright (c) 2008 Ensolis, LLC. All Rights Reserved.
  3.   ----------------------------------------------------------------------------*/
  4.  
  5. /******************************************************************************
  6.  * Interfaces used by a services for describing error that may occur.
  7.  * 
  8.  * @status    FROZEN
  9.  * @version   1.0
  10.  ******************************************************************************/
  11. function ErrorItem() 
  12. {
  13.   this._properties = {}; 
  14.   this.setProperty("severity", SEVERITY_INFO);
  15.   this.setProperty("name", "");
  16.   this.setProperty("message", ""); 
  17. }
  18.  
  19. ErrorItem.prototype = {
  20.   __proto__:  new ItemBase("ErrorItem"),
  21.             
  22.   ////////////////////////////////
  23.   // ffIErrorItem
  24.     
  25.   /**
  26.    * Severity of the error.
  27.    */  
  28.   get severity() { return this.getProperty("severity"); },
  29.   
  30.   /**
  31.    * Name of the error.  Can be used as a short message.
  32.    */
  33.   get name() { return this.getProperty("name"); },
  34.   
  35.   /**
  36.    * Long error message.  Used often as a tooltip.
  37.    */  
  38.   get message() { return this.getProperty("message"); },  
  39.     
  40.   /**
  41.    * Initialize an error item.
  42.    * 
  43.    * @param   Severity of the error.
  44.    * @param   Name of the error.
  45.    * @param   Message for the error.
  46.    */  
  47.   init: function ErrorItem_init(aSeverity, aName, aMessage)
  48.   {
  49.     this.setProperty("severity", aSeverity);
  50.     this.setProperty("name", aName);
  51.     this.setProperty("message", aMessage);
  52.   },
  53.   
  54.   /**
  55.    * Convert an error item to a string.  Used in logging.
  56.    * 
  57.    * @return  A JS string representation of the error.
  58.    */        
  59.   toString: function ErrorItem_toString()
  60.   {
  61.     //get the severity string
  62.     var severity = "";
  63.     switch (this.severity) {
  64.     case SEVERITY_WARNING:
  65.       severity = "Warning";
  66.       break;
  67.     case SEVERITY_ERROR:
  68.       severity = "Error";
  69.       break;
  70.     case SEVERITY_INFO:
  71.       severity = "Informational";
  72.       break;
  73.     }
  74.  
  75.     //create the return string
  76.     var rv = "[severity: " + severity + ", ";
  77.     rv += "name: " + this.name + ", ";
  78.     rv += "message: " + this.message + "]";
  79.     
  80.     //return the string
  81.     return rv;
  82.   }
  83. };